package com.wicket.okrbff.biz.service.impl;

import cn.hutool.core.bean.BeanUtil;
import com.wicket.okrbff.biz.service.ProgressPublicTechnicaCapacityService;
import com.wicket.okrbff.biz.service.dto.req.*;
import com.wicket.okrbff.biz.service.dto.res.*;
import com.wicket.okrbff.common.ro.OkrResult;
import com.wicket.okrbff.common.ro.OkrResult;
import com.wicket.okrbff.common.util.CommonFunctionHelper;
import com.wicket.okrbff.common.util.RedisUtil;
import javax.annotation.Resource;
import org.apache.skywalking.apm.toolkit.trace.Tag;
import org.apache.skywalking.apm.toolkit.trace.Tags;
import org.apache.skywalking.apm.toolkit.trace.Trace;
import org.springframework.stereotype.Service;
import com.wicket.okrapp.integration.FwAppProgressPublicTechnicaCapacityClient;
import com.wicket.okrapp.integration.dto.QuerySingleContentOperateProgressDetailRespDto;
import com.wicket.okrapp.integration.dto.QuerySingleContentOperateProgressDetailReqDto;
import com.wicket.okrbff.common.exception.Assert;
import com.wicket.okrapp.integration.dto.QueryMultiContentOperateProgressListRespDto;
import com.wicket.okrapp.integration.dto.QueryMultiContentOperateProgressListReqDto;
import com.wicket.okrbff.biz.service.dto.common.BffMultiContentOperateProgressDto;
import java.util.stream.Collectors;
import cn.hutool.core.collection.CollectionUtil;

/**
 * @author ：
 * @date ：
 *
 * 
 * @version 1.0
 */
@Service
public class ProgressPublicTechnicaCapacityServiceImpl
  implements ProgressPublicTechnicaCapacityService {

  @Resource
  private RedisUtil redisUtil;
@Resource
  FwAppProgressPublicTechnicaCapacityClient fwAppProgressPublicTechnicaCapacityClient;
/**
   * B3查询单内容操作进度详情(管理)[6597]
   * gen by moon at 5/31/2023, 11:33:50 PM
   */
    @Trace(operationName = "B3查询单内容操作进度详情(管理)")
    @Tags({@Tag(key = "参数",value = "arg[0]"),
            @Tag(key = "返回值",value = "returnedObj")})
  @Override
  public BffQuerySingleContentOperateProgressDetailRespDto querySingleContentOperateProgressDetail(BffQuerySingleContentOperateProgressDetailReqDto reqDto){
      
       
       QuerySingleContentOperateProgressDetailRespDto querySingleContentOperateProgressDetailRespDto_1 =null;
//步骤0: D3查询单内容操作进度详情 - querySingleContentOperateProgressDetail
     QuerySingleContentOperateProgressDetailRespDto querySingleContentOperateProgressDetailRespDto = null;
    QuerySingleContentOperateProgressDetailReqDto querySingleContentOperateProgressDetailReqDto=new QuerySingleContentOperateProgressDetailReqDto();
  if(reqDto!=null){
      querySingleContentOperateProgressDetailReqDto.setBatchSetId(reqDto.getBatchSetId());//SimpleFieldAssign//sourceId:926429_1
querySingleContentOperateProgressDetailReqDto.setThemeContentId(reqDto.getThemeContentId());//SimpleFieldAssign//sourceId:926430_1
querySingleContentOperateProgressDetailReqDto.setCustomField(reqDto.getCustomField());//SimpleFieldAssign//sourceId:999773_1
    }
  
    /*D3查询单内容操作进度详情[6564]   */
    Assert.isNull(querySingleContentOperateProgressDetailReqDto.getBatchSetId(),"B3查询单内容操作进度详情(管理)-D3查询单内容操作进度详情-批次设置对象ID不能为空",false);
Assert.isNull(querySingleContentOperateProgressDetailReqDto.getThemeContentId(),"B3查询单内容操作进度详情(管理)-D3查询单内容操作进度详情-主题内容ID不能为空",false);
      querySingleContentOperateProgressDetailRespDto = fwAppProgressPublicTechnicaCapacityClient.querySingleContentOperateProgressDetail(querySingleContentOperateProgressDetailReqDto).getData()/*vcase invoke 跨dubbo调用;*/;
      
      
      querySingleContentOperateProgressDetailRespDto_1 = querySingleContentOperateProgressDetailRespDto;
    
BffQuerySingleContentOperateProgressDetailRespDto retData = new BffQuerySingleContentOperateProgressDetailRespDto();
  if(querySingleContentOperateProgressDetailRespDto_1!=null){
      retData.setEntityId(querySingleContentOperateProgressDetailRespDto_1.getEntityId());//SimpleFieldAssign//sourceId:999774_1
retData.setProgressUpdateState(querySingleContentOperateProgressDetailRespDto_1.getProgressUpdateState());//SimpleFieldAssign//sourceId:999775_1
retData.setCurrentUpdateProgressValue(querySingleContentOperateProgressDetailRespDto_1.getCurrentUpdateProgressValue());//SimpleFieldAssign//sourceId:999776_1
retData.setBackGroundAddress(querySingleContentOperateProgressDetailRespDto_1.getBackGroundAddress());//SimpleFieldAssign//sourceId:999054_1
    }
  

  
  
return retData;
  }
/**
   * B3查询多内容操作进度列表(管理)[6596]
   * gen by moon at 5/31/2023, 11:33:45 PM
   */
    @Trace(operationName = "B3查询多内容操作进度列表(管理)")
    @Tags({@Tag(key = "参数",value = "arg[0]"),
            @Tag(key = "返回值",value = "returnedObj")})
  @Override
  public BffQueryMultiContentOperateProgressListRespDto queryMultiContentOperateProgressList(BffQueryMultiContentOperateProgressListReqDto reqDto){
      
       
       QueryMultiContentOperateProgressListRespDto queryMultiContentOperateProgressListRespDto_1 =null;
//步骤0: D3查询多内容操作进度列表 - queryMultiContentOperateProgressList
     QueryMultiContentOperateProgressListRespDto queryMultiContentOperateProgressListRespDto = null;
    QueryMultiContentOperateProgressListReqDto queryMultiContentOperateProgressListReqDto=new QueryMultiContentOperateProgressListReqDto();
  if(reqDto!=null){
      queryMultiContentOperateProgressListReqDto.setEvaObjTypeCode(reqDto.getEvaObjTypeCode());//SimpleFieldAssign//sourceId:926387_1
queryMultiContentOperateProgressListReqDto.setTableTypeCode(reqDto.getTableTypeCode());//SimpleFieldAssign//sourceId:926385_1
queryMultiContentOperateProgressListReqDto.setEntityId(reqDto.getEntityId());//SimpleFieldAssign//sourceId:926386_1
queryMultiContentOperateProgressListReqDto.setEvaluationTemplateId(reqDto.getEvaluationTemplateId());//SimpleFieldAssign//sourceId:926388_1
queryMultiContentOperateProgressListReqDto.setCustomField(reqDto.getCustomField());//SimpleFieldAssign//sourceId:926039_1
    }
  
    /*D3查询多内容操作进度列表[6563]   */
    Assert.isNull(queryMultiContentOperateProgressListReqDto.getEvaObjTypeCode(),"B3查询多内容操作进度列表(管理)-D3查询多内容操作进度列表-被评对象类型编码不能为空",false);
Assert.isNull(queryMultiContentOperateProgressListReqDto.getTableTypeCode(),"B3查询多内容操作进度列表(管理)-D3查询多内容操作进度列表-内容表类型编码不能为空",false);
Assert.isNull(queryMultiContentOperateProgressListReqDto.getEntityId(),"B3查询多内容操作进度列表(管理)-D3查询多内容操作进度列表-内容表主键ID不能为空",false);
Assert.isNull(queryMultiContentOperateProgressListReqDto.getEvaluationTemplateId(),"B3查询多内容操作进度列表(管理)-D3查询多内容操作进度列表-冗余评价模板ID不能为空",false);
Assert.isNull(queryMultiContentOperateProgressListReqDto.getCustomField(),"B3查询多内容操作进度列表(管理)-D3查询多内容操作进度列表-是否包含自身目标内容不能为空",false);
      queryMultiContentOperateProgressListRespDto = fwAppProgressPublicTechnicaCapacityClient.queryMultiContentOperateProgressList(queryMultiContentOperateProgressListReqDto).getData()/*vcase invoke 跨dubbo调用;*/;
      
      
      queryMultiContentOperateProgressListRespDto_1 = queryMultiContentOperateProgressListRespDto;
    
BffQueryMultiContentOperateProgressListRespDto retData = new BffQueryMultiContentOperateProgressListRespDto();
  if(queryMultiContentOperateProgressListRespDto_1!= null&&  queryMultiContentOperateProgressListRespDto_1.getMultiContentOperateProgressList() !=null&& !CollectionUtil.isEmpty(queryMultiContentOperateProgressListRespDto_1.getMultiContentOperateProgressList())){
      retData.setMultiContentOperateProgressList(queryMultiContentOperateProgressListRespDto_1.getMultiContentOperateProgressList().stream().map(item->item.getTimingTaskDispatchId())
        .collect(Collectors.toList()));/*list-to-strings*///sourceId:926062_1
    }
  

  
  
return retData;
  }
  //
}
